<?php namespace Common\Model;
use Hdphp\Model\Model;

class sc_brand extends Model{
	
	//指定表
	protected $table="sc_brand";
	
	//自动验证
	protected $validate=array(
	    array('bname','required','品牌名不能为空',3,3),
	    array('bname','maxlen:50','品牌名不能超过50个字符',3,3)
	);
	
	//自动完成
	protected $auto=array(
	   array('blogo','getBlogo','method',3,3)
	);
	

	//获取品牌信息
	public function getBrand(){
		return $this->orderBy('bsort','ASC')->get();
	}
	
	
	
	//上传图像
	public function getBlogo(){
		//如果隐藏域有图片信息，说明是编辑
		$oldImg=Q('post.blogo');
		
		//如果没有上传图片
		if($_FILES['blogo']['error']==4){
			//如果存在旧图片地址，那么就是修改
			if($oldImg){
				//直接返回旧图片地址
				return $oldImg;
			}
			//否则就是没有上传，直接返回空
			return '';
		}
        //上传图片处理
		$files=Upload::type('jpg,jpeg,png,gif')->make();
		//如果上传成功
		if($files){
			
			if($oldImg){
				//删除缩略图
				unlink($oldImg);
				//删除原图
				$path=str_replace('_thumb', '', $oldImg);
			    unlink($path);
			}
			
			//缩略图生成
			//定义缩略图文件
			$thumbImg=str_replace(".{$files[0]['ext']}", "_thumb.{$files[0]['ext']}", $files[0]['path']);
		    $img=Image::thumb($files[0]['path'],$thumbImg,87,29,3);
		    unlink($files[0]['path']);
		    return $img;
		}
		return $this->error=Upload::getError();
	}
	
	
	
	//添加品牌
	public function addBrand(){
		
		if(!$this->create()) return false;
		$this->add(); return true;
	}
	
    
	
	//删除品牌
	public function delBrand(){
		$bid=Q('get.bid');
		//删除相应品牌下的缩略图和原图文件
		$blogo=$this->where('bid',$bid)->pluck('blogo');
		
		if($blogo){
			unlink($blogo);
			$path=str_replace('_thumb', '', $blogo);
			unlink($path);
		}
		
		if(!$this->delete($bid)) return false;
		return true;
	}
	
	
	//获取编辑品牌信息
	public function getOneBrand(){
		$bid=Q('get.bid');
		return $this->find($bid);	
	}

    //删除品牌信息
    public function editOneBrand(){
    	if(!$this->create()) return false;
		$this->save(); return true;
    }
	
		
}
	
	
	
?>